package com.inei.cie.capitulovi;

import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.Toast;
import com.inei.cie.Carga_Trabajo_Activity;
import com.inei.cie.R;
import com.inei.cie.capituloix.CapituloIX_Activity;
import com.inei.cie.dao.CapituloVIDao;
import com.inei.cie.entidades.P6_1;
import com.inei.cie.entidades.P6_1_10N;
import com.inei.cie.entidades.P6_1_8N;

public class CapituloVI_SeccionD_Instalaciones_Sanitarias_Interiores_Activity
		extends Activity {

	// Data
	public String id_local;
	public int Nro_Ed, Nro_Pred;
	public String edificacion;
	public P6_1 obj;
	public CapituloVIDao cap6dao;
	public List<P6_1_8N> lObj8;
	public List<P6_1_10N> lObj10;

	// Componentes
	public TableLayout tl6D;
	public TableRow tr6D1, tr6D1A, tr6D2;
	public RadioGroup rg6D1, rg6D1A, rg6D2;
	public RadioButton rb6D1si, rb6D1no, rb6D1Asi, rb6D1Ano, rb6D2si, rb6D2no;
	public TextView tvEdificacionNro;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.capitulo_vi_seccion_d_instalaciones_sanitarias_interiores);

		IniciarComponenetes();

		rg6D1.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

			@Override
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				// TODO Auto-generated method stub
				switch (checkedId) {
				case R.id.rb6D1si:
					if (rb6D1si.isChecked()) {
						tl6D.removeView(tr6D1A);
						tl6D.addView(tr6D1A, tl6D.indexOfChild(tr6D1) + 1);
					}
					break;

				case R.id.rb6D1no:
					if (rb6D1no.isChecked()) {
						rb6D1Asi.setChecked(false);
						rb6D1Ano.setChecked(false);
						tl6D.removeView(tr6D1A);
					}
					break;

				default:
					break;
				}
			}
		});
	}

	public void IniciarComponenetes() {
		tl6D = (TableLayout) findViewById(R.id.tl6D);
		tr6D1 = (TableRow) findViewById(R.id.tr6D1);
		tr6D1A = (TableRow) findViewById(R.id.tr6D1A);
		tr6D2 = (TableRow) findViewById(R.id.tr6D2);

		rg6D1 = (RadioGroup) findViewById(R.id.rg6D1);
		rb6D1si = (RadioButton) findViewById(R.id.rb6D1si);
		rb6D1no = (RadioButton) findViewById(R.id.rb6D1no);

		rg6D1A = (RadioGroup) findViewById(R.id.rg6D1A);
		rb6D1Asi = (RadioButton) findViewById(R.id.rb6D1Asi);
		rb6D1Ano = (RadioButton) findViewById(R.id.rb6D1Ano);

		rg6D2 = (RadioGroup) findViewById(R.id.rg6D2);
		rb6D2si = (RadioButton) findViewById(R.id.rb6D2si);
		rb6D2no = (RadioButton) findViewById(R.id.rb6D2no);

		tl6D.removeView(tr6D1A);

		cargarData();
	}

	public void cargarData() {
		id_local = getIntent().getExtras().getString("id_local");
		Nro_Ed = getIntent().getExtras().getInt("Nro_Ed");
		Nro_Pred = getIntent().getExtras().getInt("Nro_Pred");
		edificacion = "Local : "
				+ id_local
				+ " - Predio : "
				+ (getIntent().getExtras().getInt("TITULO_PRED") < 10 ? "0"
						: "") + getIntent().getExtras().getInt("TITULO_PRED")
				+ " - Edificaci\u00f3n Nro. " + (Nro_Ed < 10 ? "0" : "")
				+ Nro_Ed;
		tvEdificacionNro = (TextView) findViewById(R.id.tvEdificacionNro);
		tvEdificacionNro.setText(edificacion);

		cap6dao = new CapituloVIDao(getApplicationContext());
		List<Object> listaDatos = cap6dao.obtenerEdificacionA(id_local, Nro_Ed,
				Nro_Pred);
		obj = (P6_1) listaDatos.get(0);

		if (obj.getP6_4_1() != 0) {
			if (obj.getP6_4_1() == 1) {
				tl6D.addView(tr6D1A, tl6D.indexOfChild(tr6D1) + 1);
				rb6D1si.setChecked(true);
			} else {
				tl6D.removeView(tr6D1A);
				rb6D1no.setChecked(true);
			}
		}

		if (obj.getP6_4_1A() != 0) {
			if (obj.getP6_4_1A() == 1) {
				rb6D1Asi.setChecked(true);
			} else {
				rb6D1Ano.setChecked(true);
			}
		}

		if (obj.getP6_4_2() != 0) {
			if (obj.getP6_4_2() == 1) {
				rb6D2si.setChecked(true);
			} else {
				rb6D2no.setChecked(true);
			}
		}
	}

	public void guardar() {
		obj.setP6_4_1(rb6D1si.isChecked() ? 1 : (rb6D1no.isChecked() ? 2 : 0));
		obj.setP6_4_1A(rb6D1Asi.isChecked() ? 1 : rb6D1Ano.isChecked() ? 2 : 0);
		obj.setP6_4_2(rb6D2si.isChecked() ? 1 : (rb6D2no.isChecked() ? 2 : 0));
		lObj8 = new ArrayList<P6_1_8N>();
		lObj10 = new ArrayList<P6_1_10N>();
		cap6dao.actualizarEdificacionA(obj, lObj8, lObj10);

		Intent irMenu = new Intent(
				this,
				CapituloVI_SeccionE_Canaletas_Aereas_Y_Bajadas_Pluviales_Activity.class);
		irMenu.putExtras(getIntent().getExtras());
		startActivity(irMenu);
		finish();
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// TODO Auto-generated method stub
		getMenuInflater().inflate(R.menu.menu_capitulovi, menu);
		menu.getItem(0).setTitle("SECCIONES");
		menu.getItem(1).setTitle("SIGUIENTE SECCI\u00d3N");
		return super.onCreateOptionsMenu(menu);
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		// TODO Auto-generated method stub

		switch (item.getItemId()) {
		case R.id.mnSalir:
			AlertDialog.Builder dialogo1 = new AlertDialog.Builder(this);
			dialogo1.setTitle("Importante");
			dialogo1.setMessage("Deseas Salir ?");
			dialogo1.setIcon(android.R.drawable.ic_dialog_alert);
			dialogo1.setCancelable(false);
			dialogo1.setPositiveButton("Si",
					new DialogInterface.OnClickListener() {
						public void onClick(DialogInterface dialogo1, int id) {
							System.exit(0);
						}
					});

			dialogo1.setNegativeButton("No",
					new DialogInterface.OnClickListener() {
						public void onClick(DialogInterface dialogo1, int id) {
							return;
						}
					});
			dialogo1.show();
			break;
		case R.id.mnMarco:
			Intent irMarco = new Intent(this, Carga_Trabajo_Activity.class);
			irMarco.putExtras(getIntent().getExtras());
			startActivity(irMarco);
			finish();
			break;
		case R.id.mnIncio:
			Intent marco = new Intent(this, CapituloVI_Menu_Activity.class);
			marco.putExtras(getIntent().getExtras());
			startActivity(marco);
			finish();
			break;
		case R.id.mnSiguiente:
			int p6_1 = rb6D1si.isChecked() ? 1 : (rb6D1no.isChecked() ? 2 : 0);
			int p6_1a = rb6D1Asi.isChecked() ? 1 : rb6D1Ano.isChecked() ? 2 : 0;
			int p6_2 = rb6D2si.isChecked() ? 1 : (rb6D2no.isChecked() ? 2 : 0);

			if (p6_1 == 0) {
				Toast.makeText(
						CapituloVI_SeccionD_Instalaciones_Sanitarias_Interiores_Activity.this,
						"Debe seleccionar una opci\u00f3n en la pregunta 1.",
						Toast.LENGTH_SHORT).show();
				break;
			}
			if (p6_1 == 1) {
				if (p6_1a == 0) {
					Toast.makeText(
							CapituloVI_SeccionD_Instalaciones_Sanitarias_Interiores_Activity.this,
							"Debe seleccionar una opci\u00f3n en la pregunta 1.A.",
							Toast.LENGTH_SHORT).show();
					break;
				}
			}
			if (p6_2 == 0) {
				Toast.makeText(
						CapituloVI_SeccionD_Instalaciones_Sanitarias_Interiores_Activity.this,
						"Debe seleccionar una opci\u00f3n en la pregunta 2.",
						Toast.LENGTH_SHORT).show();
				break;
			}

			guardar();
			break;
		case R.id.mnFoto:
			Intent foto = new Intent(
					CapituloVI_SeccionD_Instalaciones_Sanitarias_Interiores_Activity.this,
					CapituloIX_Activity.class);
			// b.putBoolean("pregunta", true);
			foto.putExtras(getIntent().getExtras());
			foto.putExtra("pregunta", true);
			startActivity(foto);
			break;
		default:
			break;
		}
		return super.onOptionsItemSelected(item);
	}

	@Override
	public void onBackPressed() {
		// TODO Auto-generated method stub
		super.onBackPressed();
		Intent irPredio = new Intent(this, CapituloVI_Menu_Activity.class);
		irPredio.putExtras(getIntent().getExtras());
		startActivity(irPredio);
		finish();
	}
}
